package com.gdpu.project.dao;

import java.util.Date;
import java.util.List;

import com.gdpu.page.vo.QueryResult;
import com.gdpu.project.vo.CgTreatise;

public interface CgTreatiseDao {
	public abstract int count(String teacherId);
	
	public abstract List<CgTreatise> nfindByProperty(String propertyName, String value,Date begin,Date end);
	/**
	 * 专著分页查询
	 * @param propertyName
	 * @param value
	 * @param begin
	 * @param end
	 * @param firstindex
	 * @param maxresult
	 * @return
	 */
	public QueryResult<CgTreatise> nfindByProperty(String propertyName, List value,Date begin,Date end,int firstindex,int maxresult);
	
	public abstract void save(CgTreatise transientInstance);

	public abstract void delete(CgTreatise persistentInstance);

	public abstract CgTreatise findById(java.lang.Integer id);

	public abstract QueryResult<CgTreatise> findByExample(CgTreatise instance,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByProperty(String propertyName,
			Object value,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByTreatiseId(Object treatiseId,int firstindex,int maxresult);
	/**
	 * 根据教师id分页查询CgTreatise
	 * @param teacherId
	 * @return
	 */
	public abstract QueryResult<CgTreatise> findByTeacherId(Object teacherId,int firstindex,int maxresult);
	/**
	 * 根据教师id查询CgTreatise
	 * @param teacherId
	 * @return
	 */
	public abstract QueryResult<CgTreatise> findByTeacherId(Object teacherId);

	public abstract QueryResult<CgTreatise> findByTreatiseTitle(Object treatiseTitle,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByPublishAdress(Object publishAdress,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByPublishDw(Object publishDw,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByTreatiseType(Object treatiseType,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByZiShu(Object ziShu,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByLanguage(Object language,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByYiWen(Object yiWen,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByXueKe(Object xueKe,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findBySchoolSign(Object schoolSign,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByIsbn(Object isbn,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByKeYanFen(Object keYanFen,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findByComment(Object comment,int firstindex,int maxresult);

	public abstract QueryResult<CgTreatise> findAll(int firstindex,int maxresult);

	public abstract CgTreatise merge(CgTreatise detachedInstance);

	public abstract void attachDirty(CgTreatise instance);

	public abstract void attachClean(CgTreatise instance);

}